package com.example.videopager

import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import androidx.viewpager2.adapter.FragmentStateAdapter
import com.google.android.material.tabs.TabLayout
import com.google.android.material.tabs.TabLayoutMediator

import kotlinx.android.synthetic.main.activity_main.*

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        //ViewPager2滑动切换页面
        mainViewPager.apply {

            //ViewPager2的数据适配器
            adapter = object : FragmentStateAdapter(this@MainActivity){
                //有多少个页面
                override fun getItemCount() = 3

                //加载页面
                override fun createFragment(position: Int) = when(position){
                    1 -> VideoFragment()
                    else -> FooFragment()
                }
            }
            //1表示第二个页面
            setCurrentItem(1,false)
        }

        //TabLayoutMediator中间器让tabLayout和viewPager2发生关联
        //kotlin规定方法中最后一个参数是Lambda表达式，可以把Lambda表达式移动到圆括号外面
        //添加implementation 'com.google.android.material:material:1.4.0'
        TabLayoutMediator(tabLayout,mainViewPager){ tab: TabLayout.Tab, i: Int ->
            tab.text = when(i){
                1 -> "video"
                else -> "foo"
            }
        }.attach()
    }

}